/*
 * KnuthMorrisPratt.h
 *
 *  Created on: 30-07-2013
 *      Author: Krzychu
 */

#ifndef KNUTHMORRISPRATT_H_
#define KNUTHMORRISPRATT_H_

#include "IAlgorithm.h"

class KnuthMorrisPratt: virtual public IAlgorithm
{
public:
	KnuthMorrisPratt();
	virtual ~KnuthMorrisPratt();
	virtual searchResult execute(std::string text, std::string pattern);
	virtual std::string getName();
protected:
	int* preKmp(std::string prefix);
};

#endif /* KNUTHMORRISPRATT_H_ */
